Software architect

A software architect is a software engineer responsible for high-level design choices related to overall system structure and behavior.[1]

It's software architect's responsibility to match architectural characteristics (aka non-functional requirements) with business requirements. For example: [2]

  • Having a high customer satisfactions requires availability, fault tolerance, security, testability, recoverability, agility and performance in the system.
  • Doing mergers and acquisitions (M&A) requires extensibility, scalability, adaptability, and interoperability
  • Constrained budget and time requires feasibility and simplicity
  • Faster time-to-market requires maintainability, testability and deployability.
  1. ^ "Software Architecture". Software Engineering Institute. Carnegie Mellon University. Retrieved 29 June 2022.
  2. ^ Fundamentals of Software Architecture: An Engineering Approach. O'Reilly Media. 2020. ISBN 978-1492043454.

Developed by StudentB